package com.mall.module.product.exception;

import com.mall.common.exception.BusinessException;
import com.mall.common.result.ResultCode;

/**
 * 商品模块业务异常
 */
public class ProductBusinessException extends BusinessException {

    /**
     * 构造函数
     * @param resultCode 结果码
     * @param message 错误信息
     */
    public ProductBusinessException(ResultCode resultCode, String message) {
        super(resultCode, message);
    }

    /**
     * 构造函数
     * @param resultCode 结果码
     */
    public ProductBusinessException(ResultCode resultCode) {
        super(resultCode);
    }

    /**
     * 参数校验异常
     * @param message 错误信息
     * @return ProductBusinessException
     */
    public static ProductBusinessException validateFailed(String message) {
        return new ProductBusinessException(ResultCode.DATA_NOT_EXISTED, message);
    }

    /**
     * 数据不存在异常
     * @param message 错误信息
     * @return ProductBusinessException
     */
    public static ProductBusinessException dataNotExisted(String message) {
        return new ProductBusinessException(ResultCode.DATA_NOT_EXISTED, message);
    }

    /**
     * 操作失败异常
     * @param message 错误信息
     * @return ProductBusinessException
     */
    public static ProductBusinessException operationFailed(String message) {
        return new ProductBusinessException(ResultCode.DATA_NOT_EXISTED, message);
    }
} 